package cm.sms;

import cm.sms.inter.SmsClient;
import cm.sms.property.SmsChannelProperties;

/**
 * @author: yxh
 * @Description: 短信发送工厂
 * @Date: Created in 2022/8/19 14:57
 * @Modified By:
 */
public interface SmsClientFactory {
    /**
     * 获得短信 Client
     *
     * @param channelId 渠道编号
     * @return 短信 Client
     */
    SmsClient getSmsClient(Long channelId);

    /**
     * 获得短信 Client
     *
     * @param channelCode 渠道编码
     * @return 短信 Client
     */
    SmsClient getSmsClient(String channelCode);

    /**
     * 创建短信 Client
     *
     * @param properties 配置对象
     */
    SmsClient createOrUpdateSmsClient(SmsChannelProperties properties);
}
